Der Auslöser-Editor

Dies ist der fortschrittlichste und mächtigste Teil des Welt-Editors. Der Auslöser-Editor ermöglicht Ihnen völlige Kontrolle über jeden Aspekt des Spiels. Er verwendet eine vereinfachte Programmiersprache, die so entwickelt wurde, dass sie für Anfänger leicht verständlich, gleichzeitig aber auch mächtig genug ist, um die Wünsche fortgeschrittener Benutzer zu erfüllen. Um den Auslöser-Editor zu öffnen, drücken Sie die F4-Taste oder wählen im Menü Modul den Eintrag Auslöser-Editor an.

Ein Auslöser besteht aus drei Teilen: „Ereignisse“, „Bedingungen“ und „Aktionen“. Die Aktionen eines Auslösers werden aktiviert, wenn eines seiner Ereignisse eintritt und wenn gleichzeitig seine Bedingungen erfüllt sind.
 

Ereignisse

„Ereignisse“ starten den Vorgang, der am Ende zur Aktivierung eines Auslösers führen kann. Nachdem das Ereignis eines Auslösers eingetreten ist, werden seine Bedingungen ausgewertet. Anschließend werden eventuell seine Aktionen ausgelöst. Der Standard-Auslöser auf einer Karte ist die „Nahkampf-Initialisierung“. Das Standard-Ereignis dieses Auslösers ist die „Karten-Initialisierung“. Im Wesentlichen bedeutet dies, dass die Aktionen ausgeführt werden, sobald die Karte fertig geladen wurde: Der Auslöser hat keine Bedingungen, die erfüllt werden müssen. Wenn Sie wollten, könnten Sie das Ereignis auf Zeit - Vergangene Zeit ändern und dann die Anzahl der Sekunden auf „10“ stellen. Die Karte würde den Auslöser „Nahkampf-Initialisierung“ dann zehn Sekunden nach dem Laden auslösen.


Bedingungen

Bedingungen sind spezielle Anforderungen, die erfüllt werden müssen, bevor die Aktionen eines Auslösers aktiviert werden. Eine Bedingung muss wahr sein, damit die Aktionen eines Auslösers ausgeführt werden. Wenn man Bedingungen auf diese Art betrachtet, kann das jedoch irreführend sein, denn Sie könnten zum Beispiel eine Bedingung wie „Falsch Gleich Falsch“ formulieren. Diese Bedingung ist aber immer wahr. Der Standard-Auslöser „Nahkampf-Initialisierung“ hat keine Standard-Bedingung, also fügen wir einfach eine neue hinzu. Drücken Sie die Tastenkombination STRG+D und wählen Sie Spieltempo-Vergleich an. Im Dialogfeld erscheint daraufhin der blaue Text „(Momentanes Spieltempo) Gleich Normal“. Wenn Sie die Bedingung unverändert lassen und dann die Karte aus dem Editor heraus starten, wird der Auslöser „Nahkampf-Initialisierung“ normal ausgeführt, sofern Sie die Standard-Einstellungen der anderen Teile des Auslösers nicht verändert haben. Falls Sie aber Normal auf Am schnellsten ändern, wird der Auslöser „Nahkampf-Initialisierung“ nicht aus dem Editor heraus ausgeführt. Dies liegt daran, dass der Editor das Spieltempo automatisch auf Normal einstellt, wenn Sie mit ihm eine Karte starten. Die Bedingung würde als „Normales Tempo Gleich Tempo am schnellsten“ ausgewertet, was natürlich nicht „Wahr“ (sondern „Falsch“) ist.

Ein Unterschied zwischen Bedingungen und Ereignissen ist, dass die Bedingungen nur ausgewertet werden, wenn das Ereignis eingetreten ist, dem sie untergeordnet sind. Obwohl ein Auslöser mehrere Ereignisse haben kann, muss nur ein Ereignis eintreten, damit die Aktionen des Auslösers aktiviert werden. Im Gegensatz dazu müssen alle Bedingungen gleichzeitig wahr sein, damit die Aktionen des Auslösers ausgeführt werden.

Das Einzige, das ein Auslöser wirklich benötigt, sind Aktionen. (Genau genommen ist das nicht ganz richtig. Aber ein Auslöser, der keine Aktionen hat, hat nun mal keinen Einfluss auf das Spiel und wäre daher sinnlos.) Man sollte jedoch wissen, dass Auslöser keine Bedingungen oder Ereignisse brauchen, damit ihre Aktionen im Spiel ausgeführt werden. Auslöser können auch von anderen Auslösern mit der Aktion Auslöser - Ausführen (Bedingungen ignorieren) ausgeführt werden, wodurch alle Aktionen des Auslösers unabhängig von dessen Ereignissen, Bedingungen oder deren Fehlen ausgeführt werden.


Aktionen

Aktionen sind das Resultat eines Auslösers. Sie können alles umfassen, angefangen beim Verschieben der Kamera auf eine bestimmte Einheit wie in den Videos bis hin zum Angriff einer Einheit auf eine andere. Aktionen ermöglichen dem Designer die völlige Kontrolle über das Spielgeschehen.


So erstellen Sie einen Auslöser

Um den Auslöser-Editor zu öffnen, drücken Sie die F4-Taste oder wählen im Menü Modul den Eintrag Auslöser-Editor an.

Bevor Sie einen Auslöser erstellen, müssen Sie eine Kategorie haben, in der Sie diesen Auslöser platzieren. Um eine neue Kategorie zu erstellen, klicken Sie im Menü Neu auf Kategorie. Sie sehen dann in der Baumstruktur auf der linken Seite die Kategorie, die Sie gerade erstellt haben. Kategorien haben Datei-Symbole. Sie können einer Kategorie einen Namen geben, indem Sie den Namen direkt eingeben, nachdem Sie die neue Kategorie erstellt haben, oder Sie wählen die Kategorie an, drücken dann die F2-Taste und geben den neuen Namen ein.

Um einen neuen Auslöser zu erstellen, wählen Sie die Kategorie an, die Sie gerade erstellt haben. Klicken Sie dann im Menü Neu auf Auslöser. Wählen Sie den Auslöser an, den Sie gerade erstellt haben. Sie werden feststellen, dass sich jetzt zwei Markierfelder rechts neben dem Feld des Auslösers befinden:

Aktiviert - Wenn dieses Feld nicht markiert ist, ist der Auslöser abgeschaltet und kann während des Spiels nicht aktiviert werden.
Zu Beginn EIN - Wenn dieses Feld nicht markiert ist, ist der Auslöser zu Beginn des Spiels abgeschaltet, kann aber während des Spiels durch die Aktion Auslöser - Einschalten aktiviert werden.
Beachten Sie, dass ein Auslöser, der dazu dient einen Auslöser auszuführen, den Status Ein/Aus ignoriert.

Rechts neben dem Auslöser-Feld befinden sich noch weitere Felder:

Kommentare - Dieses Feld dient dazu, Kommentare aufzunehmen, die Ihnen und anderen, die Ihr Skript verändern wollen, als Gedächtnisstützen dienen. Kommentare beeinflussen die Funktionalität eines Auslösers auf keine Weise. Sie dienen nur dazu, Ihre eigenen Bemerkungen aufzunehmen.
Auslöser-Funktionen - Hier werden die Innereien Ihres Auslösers angezeigt. Sie werden feststellen, dass alle Ihre Ereignisse, Bedingungen und Aktionen in diesem Teil des Editors angezeigt werden. Wenn Sie ein Ereignis, eine Bedingung oder eine Aktion hinzufügen, wird der neue Eintrag hier im entsprechenden Abschnitt angezeigt.

Sie können Ereignisse, Bedingungen und Aktionen von Auslöser zu Auslöser und sogar von Karte zu Karte kopieren und einfügen. Um ein von Ihnen bereits erstelltes Ereignis, eine Bedingung oder eine Aktion zu bearbeiten, müssen Sie lediglich auf das Ereignis, die Bedingung oder die Aktion doppelklicken.

Einige andere Dinge im Editor, mit denen Sie unter Umständen noch nicht vertraut sind, sind Variablen, Funktionen und Presets.


Variablen

Sie können den Variablen-Editor aufrufen, indem Sie die Tastenkombination STRG+B drücken oder im Menü Bearbeiten des Auslöser-Editors Variablen anwählen. Diese Variablen verhalten sich ähnlich wie Variablen in Programmiersprachen wie BASIC oder C. Variablen sind wie Gefäße, die der Editor verwendet, um bestimmte Typen von Daten aufzubewahren, aber es sind launische Gefäße: Sie nehmen immer nur einen Datentyp auf. So können Sie beispielsweise eine Integer-Zahl (Ganzzahl) nicht in einer Einheiten-Variablen speichern.

In Auslösern können Sie sich auf Objekte beziehen, die bereits auf der Karte platziert sind. Angenommen, Sie wollen eine Aktion auf eine Einheit anwenden. Öffnen Sie also die Aktion, die Sie auf die Einheit anwenden möchten, und linksklicken Sie dann auf den entsprechenden Teil des Programm-Texts dieser Aktion. Die rot und blau unterstrichenen Texte kennzeichnen die Teile der Aktion, die verändert werden können. Klicken Sie jetzt auf den Button Eine Einheit wählen. Wählen Sie dann die Einheit auf Ihrer Karte an. Der Variablenname Ihrer angewählten Einheit erscheint jetzt in der Variablenliste.

Versuchen Sie Folgendes: Platzieren Sie auf einer leeren Karte einen Orc-Peon. Öffnen Sie den Auslöser-Editor, indem Sie die F4-Taste drücken. Erstellen Sie eine Kategorie, indem Sie die Tastenkombination STRG+G drücken. Erstellen Sie dann einen Auslöser, indem Sie die Tastenkombination STRG+T drücken. Benutzen Sie die Tastenkombination STRG+R, um eine neue Aktion zu erstellen. Drücken Sie im Menü die E-Taste und suchen Sie die Aktion Einheit - Töten. Der Programm-Text dieses Auslösers lautet „Einheit - Töten (Auslösende Einheit)“. Linksklicken Sie auf den blau unterstrichenen Text „(Auslösende Einheit)“. Linksklicken Sie auf den Button mit der Aufschrift Eine Einheit wählen (links neben dem Editieren-Button). Wählen Sie den Peon an. Herzlichen Glückwunsch! Sie haben diesen Auslöser mit dem Peon auf der Karte verbunden. Alle bereits auf der Karte platzierten Einheiten haben einen zugeordneten Variablennamen.

Wenn Sie eine genauere Erklärung über Variablen benötigen, ist zu empfehlen, dass Sie in irgendeiner Computer-Programmiersprache programmieren lernen. (Es lebe C++!)


Funktionen

Der Auslöser-Editor bietet viele Funktionen, die dem Benutzer mehr Flexibilität und Kontrolle bieten, als es die vorherigen Blizzard-Editoren vermochten. Funktionen werden meistens in Verbindung mit Variablen und speziellen Datentypen verwendet. Ein Beispiel für eine nützliche Funktion ist Letzte erstellte Einheit. Diese Funktion ermöglicht Ihnen Zugriff auf die Einheit, die gerade mit Einheit - Erstellen erstellt wurde. Außer dieser Funktion gibt es nur noch eine einzige weitere Funktion, die den Zugriff auf Einheiten erlaubt, die während der Ausführung des Spiels erstellt wurden. (Die andere ist Zuletzt erstellte Einheitengruppe.) Diese Funktionen können statt einer Einheiten-Variablen oder einer bereits auf der Karte platzierten Einheit verwendet werden. Denken Sie aber daran, dass Funktionen Werte zurückgeben. Sie können einer Funktion also nicht wie einer Variablen einen bestimmten Wert zuweisen. Sie können aber einer Variablen den Wert einer Funktion zuweisen.

Wenn Sie beispielsweise gerade mit Hilfe eines Ereignisses festgestellt haben, dass ein Held eine Stufe aufgestiegen ist, dann bezieht sich Ereignis-Reaktion - Held aufgestiegen nur auf diesen speziellen Helden. Sie können der Funktion nicht einfach einen anderen Helden zuweisen und hoffen, dass der Welt-Editor damit zurechtkommt. Wenn Sie einen bestimmten Helden hochstufen möchten, müssen Sie einen anderen Weg verwenden, um den gewünschten Helden zu bestimmen (z. B. das Ereignis Einheit - Spielereigenes Einheitenereignis und die Bedingung Einheiten-Typ-Vergleich). Dann können Sie die entsprechende Aktion wie Held - Stufe einstellen mit dem Helden durchführen.


Presets

Presets sind Daten, die im Editor einprogrammiert sind. Sie stehen Ihnen von Anfang an zur Verfügung und ändern sich nie. Ein Beispiel für ein Preset ist Spieler 1 (Rot).


Wert

Ein anderes Feld, das Sie häufig verändern können, ist das Feld Wert. Dieses Feld ermöglicht Ihnen, Informationen direkt einzugeben. Es wird beispielsweise in der Aktion Spiel - Text-Nachricht (Auto-Timing) verwendet. Wenn Sie auf das blau unterstrichene Wort Text linksklicken, öffnen Sie das String-Fenster. (Strings sind Zeichenketten.) Die letzte Option in diesem Fenster ist Wert. Wenn Sie eine einfache Nachricht anzeigen möchten, können Sie sie direkt in dieses Feld eingeben. Sie müssen dafür nicht extra eine neue Variable erstellen oder eine Funktion verwenden.